Using a voice extensible markup language browser to implement an advanced intelligent network intelligent peripheral

ABSTRACT

A method and structure for providing a voice dialogue in a telephone network that includes initiating a telephone call, routing the telephone call to a voice processor based upon a call control protocol, and converting the call control protocol to a voice extensible markup language. More specifically, this process first directs a telephone call to a switch. The switch requests routing instructions from a control point and routes the telephone call to a voice extensible markup language (XML) browser according to the routing instructions. Next, the invention forwarding a request for voice instructions from the XML browser to a call control protocol to voice XML converter. The invention converts the request for voice instructions to the call control protocol using the converter and forwards the request for voice instructions from the converter to the control point. The control point returns voice instructions to the converter, and the converter, in turn, converts the voice instructions from the call control protocol to the voice XML. This process next returns voice instructions from the converter to the voice XML browser and the XML browser executes the voice instructions using the XML browser.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention generally comprises a system for providing a voicedialogue in a telephone network and more particularly to a system thatincludes a voice markup language browser connected to the switchingpoints.

2. Description of the Related Art

In order to provide enhanced telephone services, many telephonecompanies now implement a telephone communications network as anAdvanced Intelligent Network (AIN) which has made it easier to provide awide array of previously unavailable telephone service features. In anAIN system, telephone central offices, each of which serves as a signalswitching point (SSP), detect one of a number of call processing eventsidentified as AIN “triggers.” An SSP which detects a trigger suspendsprocessing of the call which activated the trigger, compiles a call datamessage and forwards that message via a common channel interofficesignaling (CCIS) link to a database system, such as a Service ControlPoint (SCP). The SCP may be implemented as part of an integrated servicecontrol point (ISCP). If needed, the SCP can instruct the central office(SSP) at which the AIN trigger was activated to obtain and forwardadditional information, e.g., information relating to the call. Oncesufficient information about the call has reached the ISCP, the ISCPaccesses stored call processing information or records (CPRs) togenerate from the received message data, a call control message. Thecall control message is then used to instruct the central office on howto process the call which activated the AIN trigger.

As part of the call control message, an ISCP can instruct the centraloffice to send the call to an outside resource, such as an intelligentperipheral (IP) using a send to outside resource (STOR) instruction. IPsare frequently coupled to SSPs to provide message announcementcapabilities, voice recognition capabilities and other functionalitywhich is not normally provided by the central office. The controlmessage is normally communicated from the ISCP to the SSP handling thecall via the CCIS link. Once received, the SSP completes the call inaccordance with the instructions received in the control message (seeU.S. Pat. No. 6,690,772, incorporated herein by reference).

SUMMARY OF THE INVENTION

In its most basic form, this disclosure presents a method of providing avoice dialogue in a telephone network that includes initiating atelephone call, routing the telephone call to a voice processor basedupon a call control protocol, and converting the call control protocolto a voice extensible markup language. More specifically, this processfirst directs a telephone call to a switch. The switch requests routinginstructions from a control point and routes the telephone call to avoice extensible markup language (XML) browser according to the routinginstructions. Next, the invention forwarding a request for voiceinstructions from the XML browser to a call control protocol to voiceXML converter. The invention converts the request for voice instructionsto the call control protocol using the converter and forwards therequest for voice instructions from the converter to the control point.The control point returns voice instructions to the converter, and theconverter, in turn, converts the voice instructions from the callcontrol protocol to the voice XML. This process next returns voiceinstructions from the converter to the voice XML browser and the XMLbrowser executes the voice instructions using the XML browser.

Thus, the voice processor (browser and converter) provides voicecommunications between a telephone user and a machine. Note that thecall control protocol may not be publicly (or widely) available, whilethe voice extensible markup language is widely publicly available.

The inventive system for providing such a voice dialogue in a telephonenetwork comprises a switching point connected to a communication device,a service control point connected to the switching point, and a voiceprocessor connected to the service control point and to the switchingpoint. The voice processor communicates with the service control pointusing a call control protocol. The voice processor comprises a voicemarkup language browser connected to the switching point and a converterconnected to the service control point and the voice markup languagebrowser. The converter is adapted to convert the call control protocolto a voice extensible markup language. The service control point isconnected to the switching point over an advanced intelligent network.Therefore, the voice markup language browser comprises an intelligentperipheral.

These, and other, aspects and objects of the present invention will bebetter appreciated and understood when considered in conjunction withthe following description and the accompanying drawings. It should beunderstood, however, that the following description, while indicatingpreferred embodiments of the present invention and numerous specificdetails thereof, is given by way of illustration and not of limitation.Many changes and modifications may be made within the scope of thepresent invention without departing from the spirit thereof, and theinvention includes all such modifications.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood from the following detaileddescription with reference to the drawings, in which:

FIG. 1 is a schematic diagram of a telephone system;

FIG. 2 is a schematic diagram of a telephone system;

FIG. 3 is a schematic diagram of the converter shown in FIG. 2;

FIG. 4 is a flow diagram illustrating one aspect of the invention; and

FIG. 5 is a flowchart diagram illustrating one aspect of the invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION

The present invention and the various features and advantageous detailsthereof are explained more fully with reference to the nonlimitingembodiments that are illustrated in the accompanying drawings anddetailed in the following description. It should be noted that thefeatures illustrated in the drawings are not necessarily drawn to scale.Descriptions of well-known components and processing techniques areomitted so as to not unnecessarily obscure the present invention. Theexamples used herein are intended merely to facilitate an understandingof ways in which the invention may be practiced and to further enablethose of skill in the art to practice the invention. Accordingly, theexamples should not be construed as limiting the scope of the invention.

The disclosure explains how to implement an IP (Intelligent Peripheral)using a standard VoiceXML browser. In the AIN (Advanced IntelligentNetwork) architecture shown in FIG. 1, an IP 104 connects to an SCP(Service Control Point) 102 using a proprietary call control protocol,such as SR-3511 (as defined by Telcordia, Piscataway, N.J., USA). In thepast, IPs were specialized pieces of equipment available from the fewvendors that had AIN expertise. The invention includes a proprietarycall control protocol to VoiceXML converter that allows a standardVoiceXML browser to be used as an IP. The IP can then be implementedusing standard equipment from vendors that do not implement proprietarycall control protocol and do not have AIN expertise.

More specifically, FIG. 1 is a block diagram that schematicallyillustrates a wired or wireless communication device 106 in a telephonenetwork that is configured for provision of IN services. While thecommunication device 106 shown in the drawings is a telephone, theinvention is applicable to any device capable of voice communication,including but not limited to cellular phones, land line phones, wirelessphones, voice enabled personal digital assistants (PDAs), voice enabledcomputers, etc. The telephone is directly or indirectly connected to asignal switching point 100, receiving signaling and voice communicationsfrom the communication device 106, and transferring the communicationsto other network elements in order to complete and carry out calls madeby or to the communication device 106.

The signal switching point 100 provides basic switching capabilities,including the means to establish, manipulate and release calls andconnections. When signaling passing through the signal switching point100 is related to an IN service, the call is suspended temporarily andcontrol of the call is passed to the service control point (SCP) 102.Communications between SSP 100 and SCP 102 are based on a standard INApplication Protocol (INAP). The SCP 102 processes the call, and thensends instructions back via INAP to SSP 100 as to how the call should behandled.

One basic idea of IN is to move intelligent services out of the networkswitches to separate service points, such as SCP 102. Multiple SCPs maycommunicate with a given signal switching point, or the switch can beprogrammed to choose the SCP for each call depending on the triggerparameters. Similarly, a single SCP can communicate with and servicemultiple SSPs (although not all the switches in a network arenecessarily IN-enabled). The unified IN architecture allows differentservice providers to create SCPs and IPs that implement their ownparticular services, independent of the underlying network technology.

For example, assuming SCP 102 is responsible for provision of telephonevoice playback/data acquisition related services, the signal switchingpoint 100 will refer calls to the SCP 102, which analyzes the callsusing its own service logic and then returns instructions to the SSP 100to forward the voice playback/data acquisition related calls to theintelligent peripheral 104. The IP 104 functions could include, forexample, playing prerecorded or synthesized voice responses to thecommunication device 106, or capturing voice responses, Dual ToneMulti-Frequency (“DTMF”) responses, etc. from the communication device106. These IP functions are usually controlled by commands from the SCP102 using a proprietary call control protocol, such as SR-3511(Telcordia).

However, because the intelligent peripheral performs its logicaloperations under a proprietary call control protocol that is highlyspecialized with respect to the advanced intelligent network, those whoare not trained with respect to the nuances of advanced intelligentnetworks, as well as those who do not have access to the privately heldproprietary call control protocol will not be able to design anintelligent peripheral. In other words, because the system shown in FIG.1 requires that the designer of the intelligent peripheral be fluentwith the proprietary call control protocol as well as advancedintelligent networks, the number of providers of such intelligentperipherals is substantially limited.

Therefore, the invention provides the proprietary call control protocolto voice extensible markup language (XML) converter 202 shown in FIG. 2.The proprietary call control protocol to voiceXML converter is designedto communicate with the service control point 102 using the proprietarycall control protocol, and to communicate with the voice XML browser 200using voice XML protocol. The details of the proprietary call controlprotocol to voiceXML converter 202 are shown in FIG. 3.

The combination of the voice XML browser 200 and the proprietary callcontrol protocol to voice XML converter 202 creates a voice processor204 allows any voice command passing from the signal switching point 100to be properly communicated with the service control point 102 eventhough the service control point operates under the proprietary callcontrol protocol.

More specifically, as shown in FIG. 3, the proprietary call controlprotocol to Voice XML converter 202 includes the following logicalcomponents. The Advanced Intelligent Network Session Coordinator 306receives a request for Voice XML via the HTTP server 302, which ittranslates into a Provide Instruction request to the SCP. When the SCPresponds, the Call Control Protocol to Voice XML Translator 300 is usedto build a Voice XML page that is returned to the Voice XML Browser viathe HTTP server. An example of a translation is from the proprietaryPlay Announcement instruction to the Voice XML <prompt> instruction.Another example is from Play Announcement and Collect Digits to <prompt>plus an appropriate DTMF input grammer. These examples are forillustration only. (Also, the logical components are listed to assist inthe explanation of the invention and do not specify a single possibleimplementation; actual modules used to build the invention could beorganized differently to achieve the same result.) The result of theCall Control Protocol instruction is sent to the Advanced IntelligentNetwork Session Coordinator by an HTTP request programmed into the VoiceXML. It translates this and sends it to the SCP.

The structure shown in FIG. 2 allows the intelligent peripheral to bemanufactured as a voice XML browser. Therefore, one who is not skilledin the art of advanced intelligent networks and/or one who does not haveaccess to the (sometimes privately held) proprietary call controlprotocol can still create an intelligent peripheral with the invention.This occurs because the proprietary call control protocol to voice XMLconverter 202 provides a conventional widely available, public voice XMLinterface and operates in the well known and publicly available voiceXML protocol. Thus, the invention allows substantially more individualsand companies to create intelligent peripherals for use with advancedintelligent networks than was previously possible. This, in turn,increases the diversity of intelligent peripherals that are provided anddecreases the cost of the intelligent peripherals.

The call flow shown in FIG. 4 illustrates one example of how a call canbe processed with the invention. More specifically, a call is firstrouted by the service provider to an SSP 100. The SSP 100 requests anSCP 102 to complete the call (first arrow in FIG. 4). The SCP 102instructs the SSP 100 to route the call to the IP 200 (second arrow inFIG. 4). The VoiceXML browser intelligent peripheral 200 receives thecall (third arrow in FIG. 4). The VoiceXML browser 200 does not need todo any special call processing, it just requests VoiceXML from a HTTPServer 302 in the proprietary call control protocol to voice XMLconverter 202 (HTTP request for a voice XML in FIG. 4). In this case,the proprietary call control protocol to voice XML converter 202 acts asthe HTTP Server. The converter receives the request for VoiceXML andissues a proprietary call control protocol request for instructions tothe SCP 102 (SR-3511 provide instruction, in FIG. 4). When the SCP 102responds (with, for example, a SR-3511 instruction to play anannouncement and collect digits in FIG. 4), the proprietary call controlprotocol to voiceXML converter 202 dynamically builds a VoiceXML page,using page builder 304 (for example, a voice XML page containingannouncement and DTMF grammar, in FIG. 4), based on the instructionsspecified by the SCP 102. The proprietary call control protocol to voiceXML converter 202 sends the page back to the VoiceXML browser 200 viathe HTTP server 302 as the HTTP response to the HTTP request madepreviously. The VoiceXML browser 200 executes the VoiceXML (instructionto play audio announcement in FIG. 4). The signal switching point 100responds to the audio announcement (for example, the caller presses theDTMF keys in FIG. 4). The voice XML browser 200 returns this result tothe proprietary call control protocol to voiceXML converter 202, whichin turn forwards the result to the SCP 102. Processing then returns tosee whether additional instructions are to be issued by the SCP. Thus,the voice XML browser acts just as it would in executing any standardVoiceXML, but in effect is executing the instructions from the SCP andis acting as an IP.

While the SR-3511 protocol is used in the example shown in FIG. 4, theinvention is not limited to this protocol and instead is applicable toany protocol that is not publicly available or widely understood,whether now in use, or developed in the future. In addition, while avoice XML protocol and browser are discussed above, the invention is notlimited to these specific protocols. Instead, the invention is broadlyapplicable to all advanced intelligent networks used for communicationthat involves a highly specialized or secretly held protocol. Throughthe use of the inventive converter, the invention converts the privateprotocol to a public protocol to allow standard devices (such as thevoice XML browser 200 to be used). The inventive architecture allows astandard VoiceXML browser 200 to be used as an IP through the use of anSR-3511 to VoiceXML Converter 202.

More specifically, this process first directs a telephone call to aswitch as shown in FIG. 5. The switch requests routing instructions froma control point (500) and routes the telephone call to a voiceextensible markup language (XML) browser (502) according to the routinginstructions. Next, the invention forwards a request for voiceinstructions from the XML browser to a call control protocol to voiceXML converter (504). The invention converts the request for voiceinstructions to the call control protocol (506) using the converter andforwards the request for voice instructions from the converter (510) tothe control point. The control point returns voice instructions to theconverter, and the converter, in turn, converts the voice instructionsfrom the call control protocol to the voice XML (512). This process nextreturns voice instructions from the converter to the voice XML browser(514) and the XML browser executes the voice instructions using the XMLbrowser (516).

The inventive architecture builds on open and standard technology thatis widely available. VoiceXML is used in many different voice solutionsand is used across industries as opposed to SR-3511, which is only usedin the AIN environment. Thus, the invention lowers the cost of thetechnology and allows for a broader selection of vendors to be used.Also, since the IP in the proposed architecture is based on VoiceXML,extensions to the proprietary call control protocol, can use thefeatures available in VoiceXML in addition to what is defined in theproprietary call control protocol. This has the added advantage thatthese extensions are in a standard language and could be used bymultiple VoiceXML browser vendors and in multiple AIN implementations.

The structure shown in FIG. 2 allows the intelligent peripheral to bemanufactured as a voice XML browser. Therefore, one who is not skilledin the art of advanced intelligent networks and/or one who does not haveaccess to the (sometimes privately held) proprietary call controlprotocol can still create an intelligent peripheral with the invention.This occurs because the proprietary call control protocol to voice XMLconverter 202 provides a conventional widely available, public voice XMLinterface and operates in the well known and publicly available voiceXML protocol. Thus, the invention allows substantially more individualsand companies to create intelligent peripherals for use with advancedintelligent networks than was previously possible. This, in turn,increases the diversity of intelligent peripherals that are provided anddecreases the cost of the intelligent peripherals.

The proposed architecture builds on open and standard technology that iswidely available. It can be implemented on a variety of platforms andoperating systems in a variety of programming languages. Extensions toSR-3511 can quickly and easily be implemented in addition to the basespecification, for example Extended Info From Resource. The proposedarchitecture could also be used to implement IP functionality throughconversion to other speech interaction markup languages such as SALT.

While the invention has been described in terms of preferredembodiments, those skilled in the art will recognize that the inventioncan be practiced with modification within the spirit and scope of theappended claims.

1. A method of providing a voice dialogue in a telephone network, saidmethod consisting of: initiating a telephone call; routing saidtelephone call to a voice processor based upon a call control protocol,wherein said voice processor provides voice communications between atelephone user and a machine, wherein said routing process routes saidtelephone call to a voice extensible markup language browser, andwherein said call control protocol is not publicly available and saidvoice extensible markup language is publicly available; and convertingsaid call control protocol to a voice extensible markup language,wherein said converting process is performed by a converter connected tosaid browser, and wherein said converting process comprises using aHypertext Transfer Protocol (HTTP) server, using an Advanced IntelligentNetwork Session Coordinator, and using a Call Control Protocol to VoiceExtensible Markup Language (XML) Converter.
 2. A method of providing avoice dialogue in a telephone network, said method consisting of:directing a telephone call to a switch; requesting, by said switch,routing instructions from a control point; routing said telephone callto a voice Extensible Markup Language (XML) browser according to saidrouting instructions, wherein said routing process routes said telephonecall to a voice extensible markup language browser; forwarding a requestfor voice instructions from said XML browser to a call control protocolto voice XML converter, wherein said call control protocol is notpublicly available and said voice extensible markup language is publiclyavailable, converting said request for voice instructions to said callcontrol protocol using said converter, wherein said converting processis performed by a converter connected to said browser, and wherein saidconverting process comprises using a Hypertext Transfer Protocol (HTTP)server, using an Advanced Intelligent Network Session Coordinator, andusing a Call Control Protocol to Voice XML Converter; forwarding saidrequest for voice instructions from said converter to said controlpoint; returning voice instructions from said control point to saidconverter; converting said voice instructions from said call controlprotocol to said voice XML; returning voice instructions from saidconverter to said voice XML browser; and executing said voiceinstructions using said XML browser.
 3. The method in claim 2, whereinsaid voice processor provides voice communications between a telephoneuser and a machine.